<html>
<head><meta charset="utf-8"><title>2021-03-01 Meeting · project-portable-simd · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/index.html">project-portable-simd</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html">2021-03-01 Meeting</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="228308605"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228308605" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228308605">(Mar 01 2021 at 21:23)</a>:</h4>
<p>Hello I have had no time to prepare as I have been fixing my computer all day.</p>



<a name="228308903"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228308903" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228308903">(Mar 01 2021 at 21:25)</a>:</h4>
<p>Also my PR is dead in the water for similar reasons.</p>



<a name="228311633"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228311633" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228311633">(Mar 01 2021 at 21:45)</a>:</h4>
<p><em>waves</em></p>



<a name="228311941"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228311941" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228311941">(Mar 01 2021 at 21:47)</a>:</h4>
<p>I have not been productive lately</p>



<a name="228311980"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228311980" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228311980">(Mar 01 2021 at 21:47)</a>:</h4>
<p>I think it's worth talking about our next steps to getting to nightly though</p>



<a name="228312712"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228312712" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228312712">(Mar 01 2021 at 21:53)</a>:</h4>
<p>stdarch has begin moving to const generics, so that <em>should</em> begin to get const generics the wider usage we want in the style we're using it and they can be our canary in the coal mine</p>



<a name="228313275"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228313275" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228313275">(Mar 01 2021 at 21:56)</a>:</h4>
<p>we need to carve out the stuff that needs to be std only into a library feature I think?</p>
<p>termhn volunteered to help with trig.</p>
<p>I determined that most of our possible API additions except for sat math will often compile to potentially sluggish scalar libm ops, if we just chuck it to LLVM, while I don't think we should document explicit instruction lowerings I would like anything that has that flaw when targeting x86_64 or aarch64 to be marked in docs.</p>



<a name="228313513"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228313513" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228313513">(Mar 01 2021 at 21:58)</a>:</h4>
<p>like we can mark warnings not promises.</p>



<a name="228313634"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228313634" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228313634">(Mar 01 2021 at 21:59)</a>:</h4>
<p>I think we need to also figure out if we truly need multiple features or not</p>



<a name="228313682"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228313682" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228313682">(Mar 01 2021 at 22:00)</a>:</h4>
<p>Or if that's something we should just push off until we get closer to stabilization</p>



<a name="228313864"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228313864" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228313864">(Mar 01 2021 at 22:00)</a>:</h4>
<p>I imagine once we get closer to stabilization things will look different than they do now in terms of completeness</p>



<a name="228313941"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228313941" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228313941">(Mar 01 2021 at 22:01)</a>:</h4>
<p>(I mean nightly features, not cargo features for <code>std</code>)</p>



<a name="228314294"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314294" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314294">(Mar 01 2021 at 22:03)</a>:</h4>
<p>I think we will be best "forward-compatibly" served by having a single <code>portable_simd_arith</code> flag and carving out subfeatures as we go. Also having thought about it I am fine with our mod name being <code>core::simd</code> but I think we should use <code>portable_simd</code> as our baseline name for things like feature flags.</p>



<a name="228314443"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314443" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314443">(Mar 01 2021 at 22:04)</a>:</h4>
<p>So I suppose I was going to suggest the opposite, <code>portable_simd</code> always gets you everything and once we prepare to stabilize, we start carving features out</p>



<a name="228314469"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314469" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314469">(Mar 01 2021 at 22:04)</a>:</h4>
<p>I think the core version of the API, given current rust and llvm, is: float/double (add, sub, mul, div, blend), integer (add, sub, mul, div, mod, bitops, blend)</p>



<a name="228314530"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314530" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314530">(Mar 01 2021 at 22:05)</a>:</h4>
<p>oops, and ordering tests</p>



<a name="228314565"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314565" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314565">(Mar 01 2021 at 22:05)</a>:</h4>
<p>and just about anything more than that gets us into trouble</p>



<a name="228314606"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314606" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314606">(Mar 01 2021 at 22:05)</a>:</h4>
<p>We're still missing a lot of random "basic" ops and I don't think you should need to opt into new features to get them</p>



<a name="228314631"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314631" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314631">(Mar 01 2021 at 22:05)</a>:</h4>
<p>That aren't necessarily arithmetic</p>



<a name="228314782"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314782" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314782">(Mar 01 2021 at 22:06)</a>:</h4>
<p>do you mean like an essentially perma unstable name</p>



<a name="228314823"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314823" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314823">(Mar 01 2021 at 22:06)</a>:</h4>
<p>that implies all other flags</p>



<a name="228314864"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314864" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314864">(Mar 01 2021 at 22:07)</a>:</h4>
<p>Yeah, or at least potentially perma unstable</p>



<a name="228314897"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314897" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314897">(Mar 01 2021 at 22:07)</a>:</h4>
<p>At some point I expect all features to stabilize</p>



<a name="228314903"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314903" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314903">(Mar 01 2021 at 22:07)</a>:</h4>
<p>I hope lol</p>



<a name="228314911"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314911" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314911">(Mar 01 2021 at 22:07)</a>:</h4>
<p>"stabilized last"</p>



<a name="228314953"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228314953" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228314953">(Mar 01 2021 at 22:07)</a>:</h4>
<p>Yeah. And it gives us the flexibility to push all of that off until we have a better handle on things</p>



<a name="228315075"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315075" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315075">(Mar 01 2021 at 22:08)</a>:</h4>
<p>I think it's possible we go to nightly and end up reconsidering something the few of us consider pretty stable</p>



<a name="228315136"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315136" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315136">(Mar 01 2021 at 22:08)</a>:</h4>
<p>Because of feedback</p>



<a name="228315208"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315208" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315208">(Mar 01 2021 at 22:09)</a>:</h4>
<p>okay by my math there's 7 rust releases left in the entire year: Mar25, May6, Jun17, Jul29, Sep9, Oct21, Dec2</p>



<a name="228315226"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315226" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315226">(Mar 01 2021 at 22:09)</a>:</h4>
<p>I think Lokathor's objection that we should avoid vague generic names is still cromulent. I think we might want to talk to T-(compiler|libs) and project const generics before we make a hard and fast decision.</p>



<a name="228315356"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315356" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315356">(Mar 01 2021 at 22:10)</a>:</h4>
<p>I think it's reasonable to pick the minimal, and i mean <em>minimal</em> parts of the API, and stabilize that within 6 releases. Like we know there's floats and ints, and we know they can do plus and minus and stuff</p>



<a name="228315430"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315430" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315430">(Mar 01 2021 at 22:11)</a>:</h4>
<p>I think it's fine if <code>portable_simd_arith</code> winds up including a bunch of "generic SIMD API surface", but I would not object to name like min portable simd.</p>



<a name="228315432"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315432" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315432">(Mar 01 2021 at 22:11)</a>:</h4>
<p>Yeah I agree about names. I think there should be a complete <code>portable_simd</code> feature but our first stabilization feature shouldn't be <code>min_portable_simd</code> but something more descriptive</p>



<a name="228315671"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315671" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315671">(Mar 01 2021 at 22:12)</a>:</h4>
<p>i don't think the name is important, the content of the feature is important, and the content almost always informs the name once you know what the feature specifically does</p>



<a name="228315693"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315693" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315693">(Mar 01 2021 at 22:12)</a>:</h4>
<p>yeah.</p>



<a name="228315758"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315758" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315758">(Mar 01 2021 at 22:13)</a>:</h4>
<p>I want to know more about existing Rust policy re: feature names and moving stuff around.</p>



<a name="228315767"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315767" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315767">(Mar 01 2021 at 22:13)</a>:</h4>
<p>So is there any reason we <em>shouldn't</em> have a feature that gives you the entirety of the current state of std::simd?</p>



<a name="228315843"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315843" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315843">(Mar 01 2021 at 22:13)</a>:</h4>
<p>Yeah I'd be curious to know too. Because afaik anything in a nightly feature is just courtesy</p>



<a name="228315844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315844">(Mar 01 2021 at 22:13)</a>:</h4>
<p>given our current status: we should put it all under one feature. if in the future we want to carve out a subset we can make a new feature and move things around</p>



<a name="228315854"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315854" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315854">(Mar 01 2021 at 22:13)</a>:</h4>
<p>I guess I just don't know if that's considered acceptable practice mostly, also we would want to stabilize it.</p>



<a name="228315904"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228315904" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228315904">(Mar 01 2021 at 22:14)</a>:</h4>
<p>yeah.</p>



<a name="228316057"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316057" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316057">(Mar 01 2021 at 22:14)</a>:</h4>
<p>even knowing that we'll want to stabililze a minimal portion before the rest, it's still easier to just have only one feature</p>



<a name="228316201"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316201" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316201">(Mar 01 2021 at 22:15)</a>:</h4>
<p>I kinda would like to just flag <code>portable_simd_arith</code> and then worry about more nuanced feature arrangements later</p>



<a name="228316433"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316433" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316433">(Mar 01 2021 at 22:16)</a>:</h4>
<p>if the initial stabilization is "the simd compatible with core" then we call it core_simd and if we need more later we just say hek it and make core_simd2</p>



<a name="228316451"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316451" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316451">(Mar 01 2021 at 22:16)</a>:</h4>
<p>lol</p>



<a name="228316463"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316463" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316463">(Mar 01 2021 at 22:16)</a>:</h4>
<p>they're just dumb names for nightly people, stable people never use them, so really it's fine</p>



<a name="228316545"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316545" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316545">(Mar 01 2021 at 22:17)</a>:</h4>
<p>I just wouldn't go with arithmetic in the name now since we already have a bit more than that, and we're probably going to continue adding mostly non-arithmetic so it could get confusing</p>



<a name="228316556"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316556" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316556">(Mar 01 2021 at 22:17)</a>:</h4>
<p>mmk</p>



<a name="228316571"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316571" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316571">(Mar 01 2021 at 22:17)</a>:</h4>
<p>If we decide we want to stabilize only arithmetic first then maybe we add that feature?</p>



<a name="228316619"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316619" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316619">(Mar 01 2021 at 22:18)</a>:</h4>
<p>well the core only part can't really have much more than arithmetic for floats</p>



<a name="228316677"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316677" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316677">(Mar 01 2021 at 22:18)</a>:</h4>
<p>practically anything else is going to trigger libm calls on some systems</p>



<a name="228316683"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316683" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316683">(Mar 01 2021 at 22:18)</a>:</h4>
<p>Sure, I was thinking we'd add a std feature and support both</p>



<a name="228316693"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316693" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316693">(Mar 01 2021 at 22:18)</a>:</h4>
<p>From the start</p>



<a name="228316752"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316752" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316752">(Mar 01 2021 at 22:19)</a>:</h4>
<p>that sounds like a whole separate nightly feature</p>



<a name="228316789"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316789" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316789">(Mar 01 2021 at 22:19)</a>:</h4>
<p>you kinda get breakages when you stabilize stuff anyways</p>



<a name="228316793"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228316793" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228316793">(Mar 01 2021 at 22:19)</a>:</h4>
<p>currently, std just defines additional methods on f32 on top of what core defines, via magical powers, and i think that's the route we should go</p>



<a name="228317331"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228317331" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228317331">(Mar 01 2021 at 22:23)</a>:</h4>
<p>Two nightly features may make sense</p>



<a name="228317386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228317386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228317386">(Mar 01 2021 at 22:23)</a>:</h4>
<p>It really is just a few float ops</p>



<a name="228317520"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228317520" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228317520">(Mar 01 2021 at 22:24)</a>:</h4>
<p>big buddy vec gets one feature per experimental method, so we'd be fine</p>



<a name="228317868"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228317868" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228317868">(Mar 01 2021 at 22:27)</a>:</h4>
<p>lol</p>



<a name="228317888"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228317888" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228317888">(Mar 01 2021 at 22:27)</a>:</h4>
<p>yeah.</p>



<a name="228318202"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228318202" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228318202">(Mar 01 2021 at 22:29)</a>:</h4>
<p><code>core_portable_simd</code><br>
<code>std_portable_simd</code><br>
?</p>



<a name="228318642"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228318642" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228318642">(Mar 01 2021 at 22:32)</a>:</h4>
<p>is core_simd taken?</p>



<a name="228318691"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228318691" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228318691">(Mar 01 2021 at 22:33)</a>:</h4>
<p>or core_simd_core</p>



<a name="228318730"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228318730" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228318730">(Mar 01 2021 at 22:33)</a>:</h4>
<p>core_simd_ext1, core_simd_ext2</p>



<a name="228318739"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228318739" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228318739">(Mar 01 2021 at 22:33)</a>:</h4>
<p>no one would be upset by that</p>



<a name="228318909"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228318909" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228318909">(Mar 01 2021 at 22:34)</a>:</h4>
<p>stdsimd is taken for some stdarch stuff but that's it I think</p>



<a name="228318917"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228318917" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228318917">(Mar 01 2021 at 22:34)</a>:</h4>
<p>Right?</p>



<a name="228319479"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228319479" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228319479">(Mar 01 2021 at 22:38)</a>:</h4>
<p>yeah, there's stuff under the stdsimd flag.</p>
<p><code>libsimd</code>? :^)</p>



<a name="228319713"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228319713" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228319713">(Mar 01 2021 at 22:40)</a>:</h4>
<p>bikeshed: <code>f32x&lt;4&gt;</code> you know you want it</p>



<a name="228319907"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228319907" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228319907">(Mar 01 2021 at 22:42)</a>:</h4>
<p>oh boy do i ever not</p>



<a name="228319936"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228319936" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228319936">(Mar 01 2021 at 22:42)</a>:</h4>
<p>haha</p>



<a name="228320010"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228320010" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228320010">(Mar 01 2021 at 22:42)</a>:</h4>
<p>Lol. One thing that does bother me is <code>MaskSize</code></p>



<a name="228320032"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228320032" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228320032">(Mar 01 2021 at 22:43)</a>:</h4>
<p>hey come on vf32 is good enough for LLVM! <span aria-label="wink" class="emoji emoji-1f609" role="img" title="wink">:wink:</span></p>



<a name="228320189"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228320189" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228320189">(Mar 01 2021 at 22:44)</a>:</h4>
<p>Yeah MaskSize is... unfortunate.</p>



<a name="228320320"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228320320" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228320320">(Mar 01 2021 at 22:45)</a>:</h4>
<p>should we even support ptr width types? it feels like a thing for the sake of completeness without a use case</p>



<a name="228320850"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228320850" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228320850">(Mar 01 2021 at 22:49)</a>:</h4>
<p>like if someone came to me with like "hey I want to do SIMD pointer arithmetic" my response isn't "oh yeah let me help you out" it's "you WHAT?"</p>



<a name="228321296"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228321296" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228321296">(Mar 01 2021 at 22:53)</a>:</h4>
<p>anyways <code>core_simd</code> should be fine~</p>



<a name="228324014"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228324014" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228324014">(Mar 01 2021 at 23:17)</a>:</h4>
<p>usize/isize/ptr simd is probably not necessary</p>



<a name="228324062"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228324062" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228324062">(Mar 01 2021 at 23:17)</a>:</h4>
<p>though i have seen it done</p>



<a name="228324077"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228324077" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228324077">(Mar 01 2021 at 23:17)</a>:</h4>
<p>I tend to agree, though I think it's disappointing if we omit it purely due to a bad naming convention</p>



<a name="228324198"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228324198" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228324198">(Mar 01 2021 at 23:18)</a>:</h4>
<p><span class="user-mention" data-user-id="312331">@Caleb Zulawski</span> <a href="https://matklad.github.io/2021/02/27/delete-cargo-integration-tests.html">https://matklad.github.io/2021/02/27/delete-cargo-integration-tests.html</a> you see this?</p>



<a name="228324918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228324918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jacob Lifshay <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228324918">(Mar 01 2021 at 23:24)</a>:</h4>
<p>I do think usize/isize/ptr SIMD is necessary, since it is used in some algorithms, such as following linked lists or transversing BSP trees for ray-tracing.</p>



<a name="228325131"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325131" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325131">(Mar 01 2021 at 23:26)</a>:</h4>
<p><span class="user-mention" data-user-id="224471">@Lokathor</span> yeah I did, I want to try combining the tests to see if that's faster or slower for us. I think it'll be slower but not sure</p>



<a name="228325135"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325135" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jacob Lifshay <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325135">(Mar 01 2021 at 23:26)</a>:</h4>
<p>notably, vectors of pointers is how LLVM expresses gather-loads and scatter-stores</p>



<a name="228325162"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325162" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325162">(Mar 01 2021 at 23:26)</a>:</h4>
<p>I agree that vectors of pointers is useful</p>



<a name="228325476"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325476" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325476">(Mar 01 2021 at 23:29)</a>:</h4>
<p><span class="user-mention" data-user-id="312331">@Caleb Zulawski</span> why would it be slower?</p>



<a name="228325733"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325733" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325733">(Mar 01 2021 at 23:31)</a>:</h4>
<p>In our specific case crate-parallelism seemed to be doing a lot</p>



<a name="228325756"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325756" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325756">(Mar 01 2021 at 23:31)</a>:</h4>
<p>But I'm definitely going to try it and see</p>



<a name="228325774"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325774" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325774">(Mar 01 2021 at 23:31)</a>:</h4>
<p>but the integration test still thread pools it</p>



<a name="228325894"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325894" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325894">(Mar 01 2021 at 23:32)</a>:</h4>
<p>So our problem was it spent a lot of time in codegen rather than rustc itself</p>



<a name="228325951"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325951" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jacob Lifshay <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325951">(Mar 01 2021 at 23:32)</a>:</h4>
<p>...kinda disappointing that neither gcc nor clang support vectors of pointers even though llvm does...rust can do better than that!</p>



<a name="228325959"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228325959" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228325959">(Mar 01 2021 at 23:32)</a>:</h4>
<p>I fixed a lot of that by reducing the number of monomorpisations but I think it's still the dominant chunk</p>



<a name="228326048"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228326048" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228326048">(Mar 01 2021 at 23:33)</a>:</h4>
<p>Since each crate is one translation unit it might actually hurt us</p>



<a name="228327564"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228327564" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228327564">(Mar 01 2021 at 23:44)</a>:</h4>
<p>i don't follow how it would hurt us</p>



<a name="228327851"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228327851" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228327851">(Mar 01 2021 at 23:47)</a>:</h4>
<p>Combining into a single crate might reduce codegen parallelism</p>



<a name="228327881"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228327881" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228327881">(Mar 01 2021 at 23:47)</a>:</h4>
<p>It also might not</p>



<a name="228327920"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228327920" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228327920">(Mar 01 2021 at 23:47)</a>:</h4>
<p>Depends on the specific codegen step I think</p>



<a name="228328480"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228328480" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228328480">(Mar 01 2021 at 23:52)</a>:</h4>
<p>don't the codegen units still run in parallel?</p>



<a name="228330970"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228330970" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228330970">(Mar 02 2021 at 00:12)</a>:</h4>
<p>I think some steps do not, idk, I do think we should try it though</p>



<a name="228357541"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228357541" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228357541">(Mar 02 2021 at 05:51)</a>:</h4>
<p>From what I have seen I no longer think "how LLVM reasons about something" is actually all that germane to how we should proceed, but I am interested to read examples of ray tracing code which uses size_t <span class="user-mention" data-user-id="229517">@Jacob Lifshay</span></p>



<a name="228361543"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228361543" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228361543">(Mar 02 2021 at 06:43)</a>:</h4>
<p>simd ptrs is used in software rendering, or it can be i should say</p>



<a name="228361601"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228361601" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228361601">(Mar 02 2021 at 06:44)</a>:</h4>
<p>for getting four texture positions at once</p>



<a name="228396643"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/228396643" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Caleb Zulawski <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#228396643">(Mar 02 2021 at 11:51)</a>:</h4>
<p>I think the point is more "SIMD pointers are common enough that LLVM has them" and not so much that it's LLVM-specific</p>



<a name="229370522"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257879-project-portable-simd/topic/2021-03-01%20Meeting/near/229370522" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257879-project-portable-simd/topic/2021-03-01.20Meeting.html#229370522">(Mar 08 2021 at 20:45)</a>:</h4>
<p>fair enough.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>